package com.fcat.base.smartapi.lib;

import java.math.BigDecimal;
import java.time.LocalDateTime;

public class ManagementToken extends CreditToken {
    
    ManagementToken() {
        this.TClassNum = 2;
    }

    // Token: 0x06000050 RID: 80 RVA: 0x00004200 File Offset: 0x00002400
    public ManagementToken(boolean mode) {
        super.SetWorkType(WorkType.STA);
        this.testMode = mode;
        this.TClassNum = 2;
    }

    public ManagementToken(byte tsc, String inkey)
    {
        super.SetWorkType(WorkType.STA);
        this.TClassNum = 2;
        this.TSubClassNum = tsc;
        this.EToByteTokens();
        super.MakeToken(this.ByteTokens, inkey);
    }
    // Token: 0x06000051 RID: 81 RVA: 0x00004216 File Offset: 0x00002416
    public ManagementToken(long data, byte tsc, String inkey)
    {
        super.SetWorkType(WorkType.STA);
        this.TClassNum = 2;
        this.TSubClassNum = tsc;
//        super.TransferAmount = data;
        super.set_transferAmount(BigDecimal.valueOf(data));
        this.EToByteTokens();
        super.MakeToken(this.ByteTokens, inkey);
    }

    //C# TO JAVA CONVERTER WARNING: Unsigned integer types have no direct equivalent in Java:
    public ManagementToken(long data, LocalDateTime tid, byte tsc, String inkey, boolean mode) {
        super.SetWorkType(WorkType.STA);
        this.testMode = mode;
        this.TClassNum = 2;
        this.TSubClassNum = tsc;
        this.IssueTime = tid;
        this.Tid = super.ToTID(this.IssueTime);
//        super.TransferAmount = data;
        super.set_transferAmount(BigDecimal.valueOf(data));
        this.EToByteTokens();
        super.MakeToken(this.ByteTokens, inkey);
    }

    // Token: 0x06000053 RID: 83 RVA: 0x000042B0 File Offset: 0x000024B0
    public ManagementToken(long data, LocalDateTime tid, byte rn, byte tsc, String inkey, boolean mode)
    {
        super.SetWorkType(WorkType.STA);
        this.testMode = mode;
        this.TClassNum = 2;
        this.TSubClassNum = tsc;
        this.RandomNum = rn;
        this.IssueTime = tid;
        this.Tid = super.ToTID(this.IssueTime);
//        super.TransferAmount = data;
        super.set_transferAmount(BigDecimal.valueOf(data));
        this.EToByteTokens();
        super.MakeToken(this.ByteTokens, inkey);
    }
}

